נכנסתי לפייסבוק דבלופרס, וראיתי שיש שם כל מיני תוספים חברתיים.
באתר שלי אני רוצה לעשות התחברות דרך פייסבוק.
כאשר גולשים ייכנסו לאתר שלי, במקום להירשם לאתר ואז להתחבר, פשוט שיתחברו עם הפייסבוק שלהם,
ובאופן כולל , הפרופיל שלהם באתר שלי יהיה הפרופיל שלהם בפייסבוק, שלעשות את זה, זה פשוט שטויות.
הבעיה היא שלא הכל מובן בחבילות שלהם.
את הקלאסים שלהם אפשר להבין ואפשר לדעת איך עושים ככה וככה,
מה שאני לא מצליח זה ליצור את החיבור, כך שהגולשים באמת יצליחו להתחבר.
חפרתי קצת וראיתי שיש appId ו- secret, שאותם אני צריך לכתוב כשאני יוצר עצם של Facebook.
אבל מצד שני, אם אני משתמש ב- API של JS שלהם, אני כותב רק את ה- appId.
לא הבנתי למה 2 הסטרינגים האלה נועדים.
אשמח להסבר קצר ואולי לפתרון הבעיה של ההתחברות.
כי ברגע שאני יוצר התחברות, הכל רץ מעולה, המון פונקציות שימושיות יש ב- API שלהם.
תודה רבה! :)
1 תשובות
באופן כללי, כמעט בכל דבר שאתה רוצ לעשות עם ה API של פייסבוק צריך להירשם שם בתור "אפליקציה". אפליקציה כוללת appId שאותו אתה מעביר בכל בקשה, בכל אינטרקציה כדי שידעו שזה ממך.
ה secret מיועד למקרים שאתה (השרת) מתקשר עם פייסבוק ישירות, בלי שיהיה או לא יהיה משתמש כלשהו באזור. (למשל שולח משהו ל wall של מישהו) כאשר לא חובה שאותו משתמש כרגע און ליין או בכלל רשום אצלך ואי-פעם ביקר באתר שלך. במקרה הזה, כדי שלא כל אחד יוכל להתחזור אליך, ה secret הוא בתור סוג של סיסמה. את הסיסמה הזאת רק אתה ופייסבוק יודעים ואף אחד לא יכול להתחזות אליך.
כאשר אתה משתמש ב jsApi - את הכל האינטרקציה עושה המשתמש, מהדפדפן שלו. אתה רק פותח וסוגר לו חלונות, אבל כל הבקשות לפייסבוק מגיעות ממנו. בגלל שהם מגיעות ממנו ופייסבוק יודעת מיהו (לפי הקוקיז שלו) היא יודעת לזהות אותו. אתה לא משתתף באותו תהליך אינטרקציה.
בגלל שאתה קובע למשתמש אילו חלוניות לפתוח ואיזה בקשות לעשות לשרת של פייסבוק - יש לך אחר כך גישה לנתונים שמוחזרים מפייסבוק אל אותו קוד ואתה יכול לקבל משם את שם המשתמש והסיסמה.
במקרה השני השרת לא מתקשר עם פייסבוק ישירות בעת ביצוע הפעולה - לכן לא נדרש ב jsApi שום secret. אמנם מאוחר יותר הוא יכול להידרש כדי שהשרת יוכל לאמת מול פייסבוק את הנתונים